package com.zmzncs.lmtc.module.order.pojo.orderInfo;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * <p>
 * 客户-信息
 * </p>
 *
 * @author 任建波
 * @since 2020-09-01
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("order_info")
@ApiModel(value="OrderInfo对象", description="客户-信息")
public class OrderInfo implements Serializable {
        private static final long serialVersionUID=1L;

        @ApiModelProperty(value = "id")
        @TableId
        private Long id;

        @ApiModelProperty(value = "订单号")
        private String orderCode;

        @ApiModelProperty(value = "交易流水号")
        private String tradeNo;

        @ApiModelProperty(value = "客户id")
        private Long customerId;

        @ApiModelProperty(value = "车牌号")
        private String carNumber;

        @ApiModelProperty(value = "停车场id")
        private Long parkId;

        @ApiModelProperty(value = "进场状况说明")
        private String inMsg;

        @ApiModelProperty(value = "进场时间")
        private Date inTime;

        @ApiModelProperty(value = "出场时间")
        private Date outTime;

        @ApiModelProperty(value = "出场类型（1：正常出场，2：异常出场）")
        private Integer outType;

        @ApiModelProperty(value = "泊链出场支付类型（0：现金，1：电子支付，2：重复入场）")
        private Integer outPayType;

        @ApiModelProperty(value = "出场时支付金额")
        private BigDecimal outPayMoney;

        @ApiModelProperty(value = "停车时长（分钟）")
        private Long parkDuration;

        @ApiModelProperty(value = "预付后免费出场时长（分钟）")
        private Integer freeOutTime;

        @ApiModelProperty(value = "订单状态（1：已入场待支付，2：已支付待出场，3：已支付已出场，4：已出场未支付，5：已支付，异常出场，6：出场已支付，待抬杆，7：非泊链停车场线下支付，已出场）")
        private Integer status;

        @ApiModelProperty(value = "出场状况信息")
        private String outMsg;

        @ApiModelProperty(value = "会员卡类型（1：月租卡，2：时长卡，3：现金，4：余额）")
        private Integer cardType;

        @ApiModelProperty(value = "是否在停车场有月租（0：没有，1：有）")
        private Integer isParkMonthCar;

        @ApiModelProperty(value = "停车场月租开始时间")
        private Date parkMonthStartTime;

        @ApiModelProperty(value = "停车场月租到期时间")
        private Date parkMonthDueTime;

        @ApiModelProperty(value = "创建时间")
        private Date createTime;

        @ApiModelProperty(value = "修改时间")
        private Date updateTime;

}
